/* latin-ext */
@font-face {
  font-family: 'Noto Sans';
  font-style: normal;
  font-weight: 900;
  font-stretch: 100%;
  font-display: swap;
  src: url('../../../fonts/o-0bIpQlx3QUlC5A4PNB6Ryti20_6n1iPHjc5aDdu2ui.woff2') format('woff2');
  unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Noto Sans';
  font-style: normal;
  font-weight: 900;
  font-stretch: 100%;
  font-display: swap;
  src: url('../../../fonts/o-0bIpQlx3QUlC5A4PNB6Ryti20_6n1iPHjc5a7duw.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/*========================================
Estilos generales
==========================================*/
ul,
ol {
  list-style: none;
}
.contenedor-login {
  width: 100%;
  height: 100vh;
  display: flex;
  -webkit-box-align: start;
  align-items: flex-start;
  overflow: hidden;
}
/*========================================
Estilos del contenedor slider
==========================================*/
.contenedor-slider {
  width: calc(100% - 520px);
  height: 100%;
  overflow: hidden;
  position: relative;
}
.slider {
  position: relative;
  display: flex;
  width: 100%;
  height: 100%;
}
.slide {
  min-width: 100%;
  min-height: 100%;
  height: auto;
  display: none;
  position: relative;
  justify-content: center;
}
.slide.active {
  display: flex;
}
.slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/*========================================
Estilos contenido slider
==========================================*/

.contenido-slider {
  position: absolute;
  bottom: 0px;
  width: 100%;
  height: 250px;
  background: linear-gradient(to top, #0f0f0f, rgba(233, 227, 227, 0));
}
.contenido-slider .logo {
  display: flex;
  justify-content: flex-end;
}
.contenido-slider .logo .titulo-sistema {
  right: 0px;
  width: 280px;
}
.contenido-slider .logo .titulo-sistema .titulo {
  font-family: "Noto Sans", sans-serif;
  font-weight: bold;
  text-align: left;
  font-size: 70px;
  height: 70px;
}
.border-font {
  text-shadow: -1px -1px 1px #fff, 1px -1px 1px #fff, -1px 1px 1px #fff,
    1px 1px 1px #fff; /* Tamaño y color del trazo */
}
.contenido-slider .logo .titulo-sistema .titulo .parte-1 {
  color: #305496;
}
.contenido-slider .logo .titulo-sistema .titulo .parte-2 {
  color: #e84c3d;
}
.contenido-slider .logo .titulo-sistema .subtitulo-1 {
  text-align: left;
  font-family: "Noto Sans", sans-serif;
  line-height: 5px;
  color: #305496;
}
.contenido-slider .logo .titulo-sistema .subtitulo-2 {
  padding-top: 10px;
  text-align: left;
  font-family: "Noto Sans", sans-serif;
  line-height: 5px;
  color: #305496;
}
.contenido-slider .descripcion {
  margin: 50px 120px 0px 120px;
  text-align: center;
  color: rgb(254, 254, 254);
  font-size: 16px;
  line-height: 15px;
}
/* Animacion slide */
.fadein {
  animation: fadein 1.5s ease-in-out;
  -webkit-animation: fadein 1.5s ease-in-out;
}
.intro {
  animation-name: rotating-text;
  animation-duration: 4s;
}
@-webkit-keyframes fadein {
  from {
    opacity: 0.4;
  }

  to {
    opacity: 1;
  }
}

@keyframes fadein {
  from {
    opacity: 0.4;
  }

  to {
    opacity: 1;
  }
}
@keyframes rotating-text {
  0% { 
    opacity: 0;
  }
  100% { 
    opacity: 1;
  }
}
/* botones next y prev */
.prev,
.next {
  cursor: pointer;
  position: absolute;
  top: 50%;
  width: auto;
  padding: 16px;
  background-color: blue;
  margin-top: -22px;
  color: #fff;
  font-size: 18px;
  transition: all.6s ease;
  border-radius: 0 3px 3px 0;
  user-select: none;
  outline: 0;
}
.next {
  right: 0;
  border-radius: 3px 0px 0px 3px;
}
.prev:hover,
.next:hover {
  background-color: #1e1e1e;
  color: #fff;
}
/* puntos */
.dots {
  position: absolute;
  width: 100%;
  text-align: center;
  bottom: 10px;
}
.dots .dot {
  outline: 0;
  cursor: pointer;
  height: 8px;
  width: 8px;
  margin: 0 2px;
  border: 1px solid #31bbef;
  border-radius: 4px;
  display: inline-block;
  transition: all.6s ease-in-out;
}
.dots .dot.active {
  background: #31bbef;
  width: 30px;
}
/*========================================
Estilos contenedor formularios
==========================================*/
.contenedor-texto {
  width: 520px;
  height: 100%;
  overflow: hidden;
  overflow-y: auto;
  background: #fff;
}
.contenedor-form {
  width: 100%;
  padding: 100px 50px 50px 50px;
}
.contenedor-form .titulo {
  font-size: 24px;
  font-weight: 700;
  margin-bottom: 20px;
  color: #1e1e1e;
}
.contenedor-form .descripcion {
  font-size: 12px;
  color: #1e1e1e;
}
.tabs-links {
  margin-top: 70px;
  display: flex;
  width: 100%;
  border-bottom: 1px solid #f2f2f2;
  padding-bottom: 10px;
}
.tabs-links .tab-link {
  font-size: 15px;
  margin-right: 30px;
  color: #1e1e1e;
  cursor: pointer;
  position: relative;
}
.tabs-links .tab-link.active {
  color: #31bbef;
  font-weight: 700;
}
.tabs-links .tab-link.active::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 2px;
  background-color: #31bbef;
  left: 0;
  bottom: -1px;
}
.formulario {
  display: none;
  margin-top: 30px;
}
.formulario.active {
  display: block;
}

/*========================================
Responsive
==========================================*/
/*========================================
    @media query - pantalla movil
==========================================*/

@media screen and (max-width: 768px) {
  .contenedor-login {
    flex-direction: column;
    height: 100%;
  }

  .contenedor-slider {
    width: 100%;
    height: 400px;
    position: relative;
  }

  .contenido-slider {
    bottom: 0px;
    width: 100%;
    background: linear-gradient(to top, #0f0f0f, rgba(233, 227, 227, 0));
  }

  .dots {
    display: none;
  }

  .contenedor-texto {
    width: calc(100% - 30px);
    position: relative;
    background: #fff;
    box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.08);
    margin: auto;
    margin-top: -50px;
    border-radius: 7px;
    margin-bottom: 40px;
  }

  .contenedor-form {
    padding: 20px !important;
  }

  .contenedor-form .titulo {
    font-size: 20px;
  }

  .contenedor-form .tabs-links {
    margin-top: 40px;
  }
}

/*========================================
    @media query - Tablet horizontal
==========================================*/
@media screen and (max-width: 812px) {
  .contenido-slider .descripcion {
    display: none;
  }
  .contenido-slider .logo {
    margin-top: 100px;
  }
  .contenido-slider .logo img {
    width: 200px;
  }
  .contenido-slider .logo .titulo-sistema {
    width: 200px;
  }
  .contenido-slider .logo .titulo-sistema .titulo {
    font-size: 50px;
    height: 50px;
  }
  .contenido-slider .logo .titulo-sistema .subtitulo-1 {
    font-size: 10px;
  }
  .contenido-slider .logo .titulo-sistema .subtitulo-2 {
    font-size: 10px;
  }
}

@media screen and (max-width: 1024px) {
  .contenedor-form {
    padding: 50px;
  }

  .prev,
  .next {
    display: none;
  }

  .contenido-slider {
    width: 100%;
    bottom: 0px;
    background: linear-gradient(to top, #0f0f0f, rgba(233, 227, 227, 0));
  }
}
